Modern computing environments may include a variety of interconnected applications, services, and/or resources. Accordingly, when an application or service fails, the failure may be traced back to one or more failures of other applications, services, and/or resources in the environment.
When an application or service fails, an administrator may use a troubleshooting system intended to facilitate the discovery of the underlying fault (or the “root cause” of the failure). For example, traditional troubleshooting systems may present an administrator with information about computing elements on which a failed application or service depends and allow the administrator to select one computing element for further investigation. Unfortunately, this approach may cause a remote administrator to wait for the information for each new selection to be fetched, thereby wasting the administrator's time and potentially delaying a resolution to the failure. Alternatively, traditional troubleshooting systems may fetch an entire dependency tree of a computing environment at once. Unfortunately, due to the potential size and complexity of some computing environments, fetching this information may consume a significant amount of time and resources, especially for a remote administrator operating from a mobile device with limited resources. Furthermore, displaying an entire dependency tree of a complex computing environment within the limited display of some mobile devices may provide a poor interface experience for an administrator. Accordingly, the systems and methods described herein identify and address a need for additional and improved systems and methods for fetching troubleshooting data.